package com.xuecheng.api.content;

import com.xuecheng.api.content.model.dto.CourseBaseDTO;
import com.xuecheng.api.content.model.qo.QueryCourseModel;
import com.xuecheng.api.content.model.vo.CourseBaseVO;
import com.xuecheng.common.domain.page.PageRequestParams;
import com.xuecheng.common.domain.page.PageVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;

@Api(value = "查询课程", tags = "查询课程数据")
public interface CourseBaseApi {


    @ApiOperation("分页查询课程数据")
    PageVO queryCourseListByPage(PageRequestParams pagePrarms, QueryCourseModel model);

    @ApiOperation("增加新课程")
    CourseBaseDTO insertCourseBase(CourseBaseVO courseBaseVO);

    @ApiOperation(value = "根据ID查询课程信息")
    CourseBaseDTO queryByCourseID(Long courseBaseId);


    @ApiOperation(value = "修改课程信息")
    CourseBaseDTO updateCourseBase(CourseBaseVO courseBaseVO);

    @ApiOperation(value = "删除课程信息")
    Boolean deleteCourseBase(Long courseId);

    @ApiOperation(value = "提交审核")
    @ApiImplicitParam(name = "courseBaseId", value = "课程ID", required = true, dataType = "Long", paramType = "query", example = "1")
    void commitCourseBase(Long courseBaseId);




}
